﻿namespace IOA.MES.DataAccess.VModel
{
    /// <summary>
    /// 过站扣料
    /// </summary>
    public class VProductViaSiteMaterial : BaseVModel
    {
        private string _orderNo = string.Empty;
        private string _workOrderNo = string.Empty;
        private string _barCode = string.Empty;
        private string _workshopCode = string.Empty;
        private string _workshopName = string.Empty;
        private string _machineName = string.Empty;
        private string _materielCategoryCode = string.Empty;
        private string _materielCategoryName = string.Empty;
        private string _materielCode = string.Empty;
        private string _materielName = string.Empty;
        private string _batchNo = string.Empty;
        private string _materielSpecs = string.Empty;
        private string _issueMaterialBillNo = string.Empty;
        private string _allocateNo = string.Empty;
        private string _materialCompany = string.Empty;
        private string _batchNoBig = string.Empty;
        private string _batchNoSmall = string.Empty;
        private string _dutyName = string.Empty;

        #region Public Property

        ///<Summary>
        /// 车间代码
        ///</Summary>
        public string WorkshopCode
        {
            get { return string.IsNullOrWhiteSpace(_workshopCode) ? string.Empty : _workshopCode; }
            set { _workshopCode = value; }
        }

        ///<Summary>
        /// 车间名称
        ///</Summary>
        public string WorkshopName
        {
            get { return string.IsNullOrWhiteSpace(_workshopName) ? string.Empty : _workshopName; }
            set { _workshopName = value; }
        }

        ///<Summary>
        /// 订单号
        ///</Summary>
        public string OrderNo
        {
            get { return string.IsNullOrWhiteSpace(_orderNo) ? string.Empty : _orderNo; }
            set { _orderNo = value; }
        }

        ///<Summary>
        /// 工单号
        ///</Summary>
        public string WorkOrderNo
        {
            get { return string.IsNullOrWhiteSpace(_workOrderNo) ? string.Empty : _workOrderNo; }
            set { _workOrderNo = value; }
        }

        ///<Summary>
        /// 组件条码
        ///</Summary>
        public string BarCode
        {
            get { return string.IsNullOrWhiteSpace(_barCode) ? string.Empty : _barCode; }
            set { _barCode = value; }
        }

        ///<Summary>
        /// 站点类型
        ///</Summary>
        public Enum.SiteType SiteType { get; set; }

        ///<Summary>
        /// 班次ID
        ///</Summary>
        public int DutyId { get; set; }

        ///<Summary>
        /// 班次名称
        ///</Summary>
        public string DutyName
        {
            get { return string.IsNullOrWhiteSpace(_dutyName) ? string.Empty : _dutyName; }
            set { _dutyName = value; }
        }

        ///<Summary>
        /// 设备ID
        ///</Summary>
        public int MachineId { get; set; }

        ///<Summary>
        /// 设备名称
        ///</Summary>
        public string MachineName
        {
            get { return string.IsNullOrWhiteSpace(_machineName) ? string.Empty : _machineName; }
            set { _machineName = value; }
        }

        ///<Summary>
        /// 发料单号
        ///</Summary>
        public string IssueMaterialBillNo
        {
            get { return string.IsNullOrWhiteSpace(_issueMaterialBillNo) ? string.Empty : _issueMaterialBillNo; }
            set { _issueMaterialBillNo = value; }
        }

        ///<Summary>
        /// 调拨单号
        ///</Summary>
        public string AllocateNo
        {
            get { return string.IsNullOrWhiteSpace(_allocateNo) ? string.Empty : _allocateNo; }
            set { _allocateNo = value; }
        }

        ///<Summary>
        /// 调拨单物料ID
        ///</Summary>
        public long AllocateProductId { get; set; }

        ///<Summary>
        /// 物料分类代码
        ///</Summary>
        public string MaterielCategoryCode
        {
            get { return string.IsNullOrWhiteSpace(_materielCategoryCode) ? string.Empty : _materielCategoryCode; }
            set { _materielCategoryCode = value; }
        }

        ///<Summary>
        /// 物料分类名称
        ///</Summary>
        public string MaterielCategoryName
        {
            get { return string.IsNullOrWhiteSpace(_materielCategoryName) ? string.Empty : _materielCategoryName; }
            set { _materielCategoryName = value; }
        }

        ///<Summary>
        /// 物料代码
        ///</Summary>
        public string MaterielCode
        {
            get { return string.IsNullOrWhiteSpace(_materielCode) ? string.Empty : _materielCode; }
            set { _materielCode = value; }
        }

        ///<Summary>
        /// 物料名称
        ///</Summary>
        public string MaterielName
        {
            get { return string.IsNullOrWhiteSpace(_materielName) ? string.Empty : _materielName; }
            set { _materielName = value; }
        }

        ///<Summary>
        /// 物料规格
        ///</Summary>
        public string MaterielSpecs
        {
            get { return string.IsNullOrWhiteSpace(_materielSpecs) ? string.Empty : _materielSpecs; }
            set { _materielSpecs = value; }
        }

        ///<Summary>
        /// 厂家
        ///</Summary>
        public string MaterielCompany
        {
            get { return string.IsNullOrWhiteSpace(_materialCompany) ? string.Empty : _materialCompany; }
            set { _materialCompany = value; }
        }

        ///<Summary>
        /// 批次号
        ///</Summary>
        public string BatchNo
        {
            get { return string.IsNullOrWhiteSpace(_batchNo) ? string.Empty : _batchNo; }
            set { _batchNo = value; }
        }

        ///<Summary>
        /// 托盘号
        ///</Summary>
        public string BatchNoBig
        {
            get { return string.IsNullOrWhiteSpace(_batchNoBig) ? string.Empty : _batchNoBig; }
            set { _batchNoBig = value; }
        }

        ///<Summary>
        /// 箱号
        ///</Summary>
        public string BatchNoSmall
        {
            get { return string.IsNullOrWhiteSpace(_batchNoSmall) ? string.Empty : _batchNoSmall; }
            set { _batchNoSmall = value; }
        }

        ///<Summary>
        /// 数量
        ///</Summary>
        public decimal Quantity { get; set; }
        #endregion
    }
}
